函数原型和函数调用


    #include <iostream>
    void cheers(int);        // 函数原型
    double cube(double x);   // 函数原型
    int main()
    {
        using namespace std;
        cheers(5);
        cout << "Give me a number: ";
        double side;
        cin >> side;
        double volume = cube(side);
        cout << "A " << side << "-foot cube has a volume of ";
        cout << volume << " cubic feet.\n";
        cheers(cube(2));
        return 0;
    }

    void cheers(int n)
    {
        using namespace std;
        for (int i = 0; i < n; i++)
            cout << "Cheers! ";
        cout << endl;
    }

    double cube(double x)
    {
        return x * x * x;
    }

  原型的语法

  函数原型是一条语句,因此必须以分号结束。函数原型不要求提供变量名,有类型列表就足够了。

    void cheers(int);

  通常,在原型的参数列表中,可以包括变量名,也可以不包括。原型中的变量名相当于占位符,因此不必与函数定义中的变量名相同。

  在 C++ 中,括号为空与在括号中使用关键字 void 是等效的--意味着函数没有参数。不指定参数列表时应使用省略号:

    void say_bye(...);

  通常,仅当与接受可变参数的 C 函数(如 printf())交互时才需要这样做。

  原型的功能

  ● 编译器正确处理函数返回值;

  ● 编译器检查使用的参数数目时否正确;

  ● 编译器检查使用的参数类型是否正确。

🔚